package com.hiultra.archive.service;

import java.util.List;

import com.hiultra.archive.domain.ArchiveBoxStatus;
import com.hiultra.archive.domain.vo.ResultEntity;

/**
 * 盒状态记录Service接口
 *
 * @author 派大星
 * @date 2024-07-23
 */
public interface IArchiveBoxStatusService {
    /**
     * 查询盒状态记录
     *
     * @param id 盒状态记录主键
     * @return 盒状态记录
     */
    public ArchiveBoxStatus selectArchiveBoxStatusById(Long id);

    /**
     * 查询盒状态记录列表
     *
     * @param archiveBoxStatus 盒状态记录
     * @return 盒状态记录集合
     */
    public List<ArchiveBoxStatus> selectArchiveBoxStatusList(ArchiveBoxStatus archiveBoxStatus);

    /**
     * 新增盒状态记录
     *
     * @param archiveBoxStatus 盒状态记录
     * @return 结果
     */
    public int insertArchiveBoxStatus(ArchiveBoxStatus archiveBoxStatus);

    /**
     * 修改盒状态记录
     *
     * @param archiveBoxStatus 盒状态记录
     * @return 结果
     */
    public int updateArchiveBoxStatus(ArchiveBoxStatus archiveBoxStatus);

    /**
     * 批量删除盒状态记录
     *
     * @param ids 需要删除的盒状态记录主键集合
     * @return 结果
     */
    public int deleteArchiveBoxStatusByIds(Long[] ids);

    /**
     * 删除盒状态记录信息
     *
     * @param id 盒状态记录主键
     * @return 结果
     */
    public int deleteArchiveBoxStatusById(Long id);

    /**
     * 档案室档案盒状态上报接口
     *
     * @param archiveBoxStatus 盒状态记录
     * @return 结果
     */
    public int reportArchiveBoxStatus(ArchiveBoxStatus archiveBoxStatus);

    /**
     * 档案室档案盒状态定时上报接口
     *
     * @return 结果
     */
    public ResultEntity timingArchiveBoxStatusResultReport();
}
